package bpmn.structure;

import java.util.ArrayList;

public class Process extends BPMNElem
{
    private String name;
    private LaneSet laneSet;
    private final ArrayList<ProcessElem> elements;
    private boolean isExecutable;

    {
        type = BPMNElemType.Process;
    }

    public Process(String id)
    {
        super(id);
        elements = new ArrayList<>();
    }

    public ArrayList<ProcessElem> getElements()
    {
        return elements;
    }

    public boolean isExecutable()
    {
        return isExecutable;
    }

    public LaneSet getLaneSet()
    {
        return laneSet;
    }

    public void setExecutable(boolean executable)
    {
        isExecutable = executable;
    }

    public void addElement(ProcessElem elem)
    {
        elements.add(elem);
    }

    public void setLaneSet(LaneSet laneSet)
    {
        this.laneSet = laneSet;
    }

    public String getName()
    {
        return name;
    }

    public void setName(String name)
    {
        this.name = name;
    }
}
